Systems and methods for using a predictive engine to predict failures in machine-learning trained systems

ABSTRACT

A computer-implemented method for using a machine-learning trained predictive engine to predict failures includes receiving electronic prior transaction data corresponding to a plurality of prior successful transactions and a plurality of prior unsuccessful transactions, and training a machine learning predictive engine based on the plurality of prior successful transactions and the plurality of prior unsuccessful transactions. Electronic transaction data may be received, the electronic transaction data being associated with a user, an item, and candidate transaction terms, the electronic transaction data being associated with a candidate transaction. The machine learning predictive engine may determine a likelihood of success of the candidate transaction based on the electronic transaction data, and display the likelihood of success of the candidate transaction.

TECHNICAL FIELD

Various embodiments of the present disclosure relate generally to usinga predictive engine to predict failures using machine learning trainedsystems, and relate particularly to methods and systems for predictingthe likelihood of success of candidate transactions.

BACKGROUND

Transactions may require analysis of candidate (e.g., proposed,potential) terms prior to execution. Any of the candidate terms mayincrease or decrease the likelihood that the transaction will ultimatelyoccur. There is a need for automated analysis of candidate terms inorder to increase the predictability of, and accelerate termdetermination for, transactions.

The present disclosure is directed to addressing one or more of theseabove-referenced challenges. The background description provided hereinis for the purpose of generally presenting the context of thedisclosure. Unless otherwise indicated herein, the materials describedin this section are not prior art to the claims in this application andare not admitted to be prior art, or suggestions of the prior art, byinclusion in this section.

SUMMARY

According to certain aspects of the disclosure methods, systems, andnon-transitory computer-readable media are disclosed for predicting alikelihood of success of transactions. Each of the examples disclosedherein may include one or more of the features described in connectionwith any of the other disclosed examples.

In one example, a computer-implemented method for using amachine-learning trained predictive engine to predict failures, includesreceiving electronic prior transaction data corresponding to a pluralityof prior successful transactions and a plurality of prior unsuccessfultransactions, and training a machine learning predictive engine based onthe electronic prior transaction data corresponding to the plurality ofprior successful transactions and the plurality of prior unsuccessfultransactions. Additionally, the method may include receiving electronictransaction data comprising a user, an item, and candidate transactionterms, the electronic transaction data being associated with a candidatetransaction. Further, the method may include determining, by the machinelearning predictive engine, a likelihood of success of the candidatetransaction based on the electronic transaction data, and displaying thelikelihood of success of the candidate transaction.

In one example, a computer-implemented method for using amachine-learning trained predictive engine to predict failures mayinclude receiving electronic prior transaction data corresponding to aplurality of prior successful transactions and a plurality of priorunsuccessful transactions, and training a machine learning predictiveengine based on the electronic prior transaction data corresponding tothe plurality of prior successful transactions and the plurality ofprior unsuccessful transactions. Additionally, the method may includereceiving electronic transaction data comprising a user, an item, andcandidate transaction terms, the electronic transaction data beingassociated with a candidate transaction. Further, the method may includedetermining, by the machine learning predictive engine, a likelihood ofsuccess of the candidate transaction based on the electronic transactiondata, and determining whether the likelihood of success is below apredetermined threshold. In response to determining that the likelihoodof success is below a predetermined threshold, the method may includedetermining one or more alternate terms of the candidate transactionthat increase the likelihood of success above the predeterminedthreshold, and display the alternate terms of the candidate transaction.

In another example, a system for using a machine-learning trainedpredictive engine to predict failures, and one or more processorsconfigured to execute the instructions to perform operations includingreceiving electronic prior transaction data corresponding to a pluralityof prior successful transactions and a plurality of prior unsuccessfultransactions, and training a machine learning predictive engine based onthe electronic prior transaction data corresponding to the plurality ofprior successful transactions and the plurality of prior unsuccessfultransactions. Electronic transaction data may be received, theelectronic transaction data comprising a user, an item, and candidatetransaction terms, the electronic transaction data being associated witha candidate transaction. The machine learning predictive engine maydetermine a likelihood of success of the candidate transaction based onthe electronic transaction data, and display the likelihood of successof the candidate transaction.

Additional objects and advantages of the disclosed embodiments will beset forth in part in the description that follows, and in part will beapparent from the description, or may be learned by practice of thedisclosed embodiments.

It is to be understood that both the foregoing general description andthe following detailed description are exemplary and explanatory onlyand are not restrictive of the disclosed embodiments, as claimed.

BRIEF DESCRIPTION OF THE DRAWINGS

The accompanying drawings, which are incorporated in and constitute apart of this specification, illustrate various exemplary embodiments andtogether with the description, serve to explain the principles of thedisclosed embodiments.

FIG. 1 depicts a client-server environment, according to one or moreembodiments.

FIG. 2 illustrates a process for using a predictive engine to forecastthe outcome of candidate transactions, according to one or moreembodiments.

FIG. 3 illustrates a process for iteratively determining candidate termsfor transactions, according to one or more embodiments.

FIG. 4 illustrates a process for forecasting the outcome of candidatetransactions, according to one or more embodiments.

FIG. 5 is a simplified functional block diagram of a computer that maybe configured as a device for executing the methods of FIGS. 2-4,according to exemplary embodiments of the present disclosure.

DETAILED DESCRIPTION OF EMBODIMENTS

The terminology used in this disclosure is to be interpreted in itsbroadest reasonable manner, even though it is being used in conjunctionwith a detailed description of certain specific examples of the presentdisclosure. Indeed, certain terms may even be emphasized below; however,any terminology intended to be interpreted in any restricted manner willbe overtly and specifically defined as such in this Detailed Descriptionsection. Both the foregoing general description and the followingdetailed description are exemplary and explanatory only and are notrestrictive of the features, as claimed.

In this disclosure, the term “computer system” generally encompasses anydevice or combination of devices, each device having at least oneprocessor that executes instructions from a memory medium. Additionally,a computer system may be included as a part of another computer system.

In this disclosure, the term “based on” means “based at least in parton.” The singular forms “a,” “an,” and “the” include plural referentsunless the context dictates otherwise. The term “exemplary” is used inthe sense of “example” rather than “ideal.” The term “or” is meant to beinclusive and means either, any, several, or all of the listed items.The terms “comprises,” “comprising,” “includes,” “including,” or othervariations thereof, are intended to cover a non-exclusive inclusion suchthat a process, method, or product that comprises a list of elementsdoes not necessarily include only those elements, but may include otherelements not expressly listed or inherent to such a process, method,article, or apparatus. Relative terms, such as, “substantially,”“approximately,” “about,” and “generally,” are used to indicate apossible variation of ±10% of a stated or understood value.

In general, the present disclosure provides methods and systems forusing a predictive engine to forecast the outcome of candidatetransactions. As will be discussed below in more detail, in methods andsystems according to the present disclosure, existing techniques may beimproved.

Negotiated transactions, such as for the purchase of an item, mayinvolve one or more brokers, and one or more lenders, in addition toclient (buyer/customer) and seller. These negotiated transactions mayhave a plurality of terms beyond merely the price of the item, such asannual percentage rate (APR), payback time period, months of payback,etc.

Since three or more parties may need to all agree on terms of thetransaction, this may lead to rounds of negotiations where two of theparties agree, but an additional party declines, thus initiating anotherround of negotiation. This process may become protracted. For example,with the sale of an automobile, the dealer and the buyer may agree onterms, but the lender may decline due to unacceptably low APR,unacceptably long payback time period, unacceptably low down payment,etc. The lender may simply respond with a “yes” or “no,” thus leavingthe buyer and dealer unsure as to how to best renegotiate the terms inorder to complete the transaction. Lenders may be flexible, for example,when/if the dealer and/or customer is valued (e.g., if they arehigh-volume), but often any deviation from an acceptable range simplyresults in a “no” response without explanation from the lender. This mayalso happen in an online environment where the client/customer may enterproposed terms e.g., via a web portal. The client may expend time andenergy renegotiating terms, rebates, back-end add-ons, front-end values,trade-in values, down payment amounts, APR, and/or payback months thatmay be unacceptable to the dealer and/or the lender. Time may be wastedwhile the dealer and/or client requests approval of unfeasible terms(from the lender's or dealer's perspective) for multiple rounds ofnegotiation. These same problems may exist for the sale of homes, or thesale of any item where terms must be agreed upon by more than twoparties.

Accordingly, a need exists to more quickly and reliably arrive at termsacceptable to all parties to a transaction.

As used herein, the term “dealer” may indicate, and may be usedinterchangeably with, a seller of items or services, a broker of itemsor services, etc. The term “client” may indicate, and may be usedinterchangeably with, a customer, buyer, person attempting to obtain alease, ownership, ownership share, etc., of an item and/or service.

FIG. 1 depicts a client-server environment that may be utilized withtechniques presented herein. One or more client system(s) 105 and/ordealer system(s) 110 may communicate across an electronic network 115with one or more lender system(s) 120. The systems of FIG. 1 maycommunicate in any arrangement. For example, client system 105 maycommunicate with a dealer system 110 regarding candidate terms for atransaction. Dealer system 110 may then communicate with lender system120, if necessary, to propose candidate terms for financing that theclient may require. Alternatively, the client may be on site at thedealer location, and the dealer system 110 alone may communicate withthe lender system 120 to propose terms of a transaction. Alternatively,the client system 105 and dealer system 110 may communicate with eachother, without involving the lender system 120. The dealer system 110and/or lender system 120 may utilize one or more third party system(s)125 in order to acquire additional information about the client, thedealer, the lender, etc., that may be useful in deciding whether toagree to proposed terms, and/or which terms to propose, etc. Forexample, the lender may pull the credit score of a client afterreceiving proposed terms for the financing of a car from the dealersystem 110 and/or client system 105.

As will be discussed herein, one or more predictive systems 130 maycommunicate with lender system 120, dealer system 110, and/or clientsystem 105 to assist the lender, dealer, and/or client in decidingwhether to agree to proposed terms of a transaction. The predictivesystem 130 may suggest new, alternate, and/or additional terms toincrease the likelihood that a transaction will be acceptable, as willbe discussed further herein.

While FIG. 1 depicts the various systems as physically separate andcommunicating across network 115, in various embodiments features ofcertain systems, such as the predictive system 130, may be incorporatedpartially or completely into any of the other systems of FIG. 1. Forexample, predictive system 130 may be incorporated into lender system120. Some or all of the functionality of the predictive system 130 maybe incorporated into client system 105, for example, some or all of thefunctionality of the predictive system 130 may be incorporated into aninternet browser extension or website page usable by a user.

FIG. 2 illustrates a process for using a predictive engine to forecastthe outcome of candidate transactions, according to one or moreembodiments. At step 205, the predictive system 130 may receive data onsuccessful and/or unsuccessful negotiations. Lenders and/or dealersoften have voluminous data about the terms and/or proposed terms oftransactions that may be used to train a predictive engine, e.g.,predictive system 130. The data may comprise records of past proposedterms for the sale of items, proposed terms of financing,seller-specific information about sales volume, items/models sold,dealer location, seasonal variations in sales for particular items ormodels, trends in sales for particular items, salesperson-specific data,front-end terms of prior negotiations (front-end referring to basic saleprice or amount to be financed related to the core item for sale),back-end terms of prior negotiations (add-on items or services beyondthe core item for sale), down payments, trade-ins, payback time periods,proposed APRs, item type/make/model/year/condition, dealer profits onprior completed transactions, and/or lender profits on prior completedtransactions, etc. The data may further comprise client/customer datasuch as credit scores, income, credit history, overall financial health,client demographics, client search history of online activity, homeownership status, occupation, marital/family status, etc.

Data may be obtained on proposed terms that were not accepted by one ormore of the parties—i.e., deals that did not succeed. For example, datamay be obtained on proposed terms from the dealer that were received bylenders for which the lender approved, but the client did not.

At step 210, the data obtained in step 205 may be used to train amachine learning system that may act as a predictive engine used bypredictive system 130. The data may be dealer-specific, in order tomaximize the accuracy of the predictive engine. Certain dealers may bemore proficient at selling certain items, certain services, certainmodels, at certain times of year, times of week, etc., and this may befactored into the predictive engine. The data may also (oralternatively) be salesperson-specific. Differing salespeople may havediffering negotiation strengths and weaknesses, and may sell certainitems more reliably than others, any or all of which may be factored inby the predictive engine when considering a potential transaction.

Alternatively, if, for example, it is determined that there isinsufficient data to train the predictive engine on a single dealer,data may be obtained from multiple dealerships that are determined to besubstantially similar. For example, dealerships with similar salesvolumes, inventories, geographic locations, etc., may be used assubstitute for, or in combination with, data for the particulardealership utilizing the predictive engine. For example, the predictiveengine may, as a rule, require data for a predetermined number ofsuccessful negotiations and a second predetermined number ofunsuccessful negotiations in order to be considered fully trained. Thisdata may be obtained from the dealership in question, but if the dataprovided is not available or insufficient, data may be acquired fromdealerships meeting predetermined metrics of similarity until sufficientdata regarding the predetermined numbers of successful and unsuccessfulnegotiations is obtained. As will be discussed further herein, once thepredictive engine is fully trained, it may be used to predict thelikelihood of success of a proposed transaction, and/or suggestalternate terms of the transaction that are likely to be successful.

The definition of “successful” prior transactions and “unsuccessful”prior transactions may vary, and may be changed by the user. Forexample, loans that were given in an ostensibly successful transactionmay nonetheless be considered “unsuccessful” if a return-on-investment(ROI) percentage and/or value threshold is not met. The loan-to-value(LTV) ratio (the ratio of the loan to the value of the asset purchased)may also be considered. If the LTV is not above a predeterminedthreshold, the transaction may be deemed “unsuccessful.”

The trained model may consider any of the data received from step 205.Any of the price of the item or service, the age or condition of theitem, etc., may be considered. Additional derivative metrics may bedetermined based on the data received in step 205. For example, if datais received regarding the client's behavior on client system 105 thatincludes the various financing terms proposed by the client, a range infinancing terms may be determined. If the client is entering a range ofcandidate financing or other terms beyond a predetermined range, thismay indicate a higher willingness to haggle, which the predictive systemmay report to the dealer and/or lender. A willingness to haggle metricmay be determined based on the range of terms proposed by the client,which may be considered by the predictive engine when predicting alikelihood of success of the transaction, when making terms modificationsuggestions, and/or when performing any of the techniques discussedherein. If the client has above a predetermined threshold for thewillingness to haggle metric, the predictive engine may ultimately ratethe likelihood of a successful transaction as more likely. Further, thepredictive engine may urge negotiations to proceed for longer, and maysuggest larger term negotiations than otherwise, if the willingness tohaggle metric is above a threshold.

The predictive engine may deploy machine learning techniques, such aslinear regression, logistical regression, random forest, gradientboosted machine (GBM), and/or a deep neural network. Supervised orunsupervised training may be employed. For example, unsupervisedapproaches may include K-means clustering. K-Nearest Neighbors may alsobe used, which may be supervised or unsupervised. Combinations ofK-Nearest Neighbors and an unsupervised cluster technique may also beused. Any of the N variables from the data received in step 205 (orderived therefrom) may correspond to a dimension in the model. As themachine learning system is trained, negotiation terms that have beensuccessful in the past may form clusters in N-dimensional space. Whenthe predictive engine ultimately makes a forecast and/or recommendation,as will be discussed further below, data from the current negotiationmay be fed to the machine learning system, for example, as anN-dimensional vector. Whatever clusters in the model are closest to thecurrent terms in N-dimensional space, and the outcomes associatedtherewith, may determine whether the negotiation is likely to besuccessful, may help suggest modifications, etc.

Simpler models may be deployed in parallel for speed. For example,rather than analyze all N variables in the current negotiation, a smallnumber of predetermined primary metrics N-X may be fed to a simplifiedmachine learning system to quickly determine if the current negotiationis close to other successful transactions. For example, a customercredit score, annual income, candidate APR, candidate financing amount,and candidate payback period may be fed to a machine learning systemtrained on these variables. If the dealer and client are havingdifficulty reaching an agreement, for example, the full machine learningsystem may be employed to make more detailed recommendations.

The number of variables analyzed by the predictive engine may be limitedto a predetermined number. A few direct or derived variables may bedetermined and used to perform techniques discussed herein. For example,a history of a particular dealer's successful deals over a predeterminedperiod, such as the past month, may be used to create an “average dealersuccess rate” variable. Other variables may include “average dealershipAPRs in the last month,” (or some other predetermined time period)and/or “average sales price on cars the customer viewed online.” Thesevariables may be provided to the predictive engine for processing,according to techniques presented herein.

Other summary statistics may be generated such as averages, ordistributions of different variables like back-end, price, APR, downpayment, etc. These variables could be stratified in multiple ways. Forexample, the average back-end for this particular band of customers maybe determined, as well as the average back-end at this dealership,and/or the average back-end for all cars of this make/model in apredetermined range of years (e.g., 2007-2011 for a 2009 model car).Then the predictive engine may display a relationship between the dealinformation (e.g., the back-end) of this particular deal and theexpected statistics. For example, the display may be “this back-end isabove average (mean/median) for customers like you/cars like this/thisdealership.” The display may also be, for example, “this back-end is 20%higher than the average (mean or median),” or “this back-end is moreexpensive than 60% of back-ends (percentiles).”

If there is a search history for a customer, similar preferences toother customers may be used to boost a recommendation for customers likethem. Feature vectors may be generated for the current and pastcustomers, and preferences may be recommended based upon a determinedsimilarity to past customers.

At step 215, data may be received corresponding to the currentnegotiation for a transaction. This may include data associated with theuser (e.g., client), data about the item or service, and/or data about aparticular party (e.g., a particular dealer and/or salesperson) to theproposed transaction. This data may be received at the predictive system130, and may be provided by the lender system 120, dealer system 110,third party system 125, and/or client system 105.

At step 220 one or more rules may be determined, for example upon beingreceived from users of the predictive engine, that may reduce the numberof possible recommendations provided in later steps. For example, a rulemay be set that a down payment be limited to a certain maximum amount,perhaps because the client may only have a certain amount of money.Rules may be set by a user, dealer, lender, etc., or may be set by thepredictive engine automatically based on the machine learning analysis.For example, while the nearest successful terms may suggest raising theoffer for purchase by $X, the predictive engine may also determine thatclients generally are very likely to reject an increase in the dollaramount above a predetermined value. The predictive engine may insteadsuggest adding back-end items, or make other suggestions for ways toincrease the odds of success of the negotiation that do not violate therules. A lender may establish a rule to never accept terms if the APR isa predetermined value below the market rate, regardless of the otherterms of the transaction. Rules may also be set for the transaction inquestion, or generally across all transactions.

At step 225, the predictive engine may determine, based on thepredictive engine and the information provided about the currentnegotiation, whether the negotiation is likely to be successful. Themachine learning system may consider parameters of the item or servicebeing considered. In a car, for example, the make, model, year, mileage,etc., may all be considered. The terms of the loan being requested maybe considered (amount, APR, payback months, etc.), and the clientfinancial health may also be considered.

The machine learning system may consider a variety of factors that maynot be obvious to a human when determining a likelihood of success.Particular dealerships might have particular talents, for example inselling back-end add-ons, selling sedans to less financially stablecustomers, and/or selling SUVs to more financially stable customers.

The predictive engine may utilize weights and thresholds, and mayutilize any of the rules previously determined/received in step 220. Forexample, if the down payment is more than a predetermined distance orpercentage off of a known successful range, or if the APR is more than apredetermined percentage off a known successful range, the predictiveengine may automatically conclude that the negotiation is unlikely to besuccessful.

The predictive engine may consider whether the candidate terms of thecurrent negotiation are likely to be successful by classifying thecandidate terms into bands. Thus, the proposed price may be associatedwith a similar price band, the item may be associated with a band ofsimilar items, the customer may be associated with a similar band ofcustomers. The predictive engine may then make a prediction of thelikelihood of success based on the various bands, rather than (or inaddition to) the exact terms of the individual negotiation.

The predictive engine may provide supplemental information about thelikelihood of success. For example, even if the negotiation is judged tobe likely unsuccessful, the predictive engine may produce feedback suchas “the deal is likely to be rejected largely due to the APR being toolow, however the client has a historically high negotiation successrate—please continue to negotiate!” The willingness to haggle metric mayalso be considered for such suggestions. Thus, certain indicators of theclient and/or dealer may cause the predictive engine to suggestcontinuing negotiations, or conversely, express skepticism aboutcontinuing negotiations.

The predictive engine may also utilize multiple objectives, theobjectives being indicated by the user and/or automatically set by thepredictive engine. For example, consumer happiness may be an objective.If the predictive engine determines that the likelihood of thetransaction proceeding is high, but the likelihood of the client beingunhappy with the deal is also high, the predictive engine may recommendthat the transaction not proceed, at least not with the currentcandidate terms. The objectives may be considered equally important, ormay be hierarchically prioritized in relation to each other, with ahigher-ranked objective being given a predetermined higher level ofimportance than the immediately lower-ranked objective. Alternatively,the degree of importance of one objective over another may be manuallyset by the user.

Optionally, at step 230, alternate terms may be suggested by thepredictive engine. By predicting whether deal negotiations are likely tobe successful, it is possible to augment the predictive engine to lookfor ways to direct the negotiation towards a successful outcome. Thepredictive engine may actively suggest term modifications that willincrease the likelihood of success, for example that will be beneficialand acceptable to the customer. As discussed above, this may involveidentifying clusters in the N-dimensional parameter space that are bothsuccessful and near to the current terms, and suggesting changes tobring the terms to more closely match the successful clusters.

The predictive engine may suggest back-end changes, such as adding anadditional warranty, in the case of cars, or merely financing throughthe dealer. The predictive engine may also suggest front-end changes,such as increasing the offered price, decreasing the price on thetrade-in, etc.

Optionally, at step 235, the predictive engine may alternatively, or inaddition to the suggestion of terms changes, suggest a change to theitem and/or services being subject to the transaction themselves. Forexample, if the predictive engine determines that a deal is, as a firstthreshold, unlikely, or, at a second threshold, very unlikely (anynumber of thresholds are possible), the predictive engine may recommenda different item with the same dealer for purchase. For example, thepredictive engine may access the dealer inventory, and may suggest a carthat is older, less expensive, has a minor accident records, etc., as areplacement for the car (e.g., item) under negotiation. The newlysuggested item may be determined by the predictive engine to increasethe odds to “successful”, or may simply decrease the odds that a dealwill not be reached. As another example, if the predictive enginedetermines that the deal is unlikely to be successful at a firstthreshold, the engine may recommend modifications to the proposed terms.If the predictive engine determines that the deal is unlikely to besuccessful at a second higher confidence threshold, the engine mayrecommend a different item. Alternatively, if the gap between anyindividual parameter and the likely successful range exceeds apredetermined amount and/or percentage, the predictive engine mayrecommend an alternate item. The predetermined amounts and/orpercentages, as with other predetermined thresholds discussed herein,may be set as a rule by the user and/or determined by the predictiveengine, for example during the machine learning process.

If the predictive engine is given access to the necessary data streams,the predictive engine may not only suggest alternate items at aparticular dealer, but may suggest alternate items at other dealers. Forexample, if a user is searching via an internet browser on client system105, the predictive engine may suggest similar cars (e.g., items) frommultiple dealerships. The predictive engine may prioritize suggestingitems that are identical, but older and/or more heavily used. Forexample, the predictive engine may prioritize suggestions of the samemake and model of a vehicle, but an older model year, or with highermileage, or with a minor accident on the vehicle history report, suchthat the value meets or is closer to the offered amount in thenegotiation.

At step 237, if the likelihood of success is above a threshold, theresults may automatically be displayed at step 245.

Optionally, At step 240, the predictive engine may further determinealternate terms packages that are similar, yet determined to likely bemore successful. This may allow the dealer and/or client to iterativelytraverse the parameter space by initially selecting a terms package thatthey most like among a plurality of candidate term packages. As will bediscussed further in reference to FIG. 3, upon selecting a package theylike best, an additional plurality of alternative packages may bedetermined by the predictive engine and displayed for consideration. Theadditional plurality of alternative packages may be determined, by thepredictive engine, to be more likely or approximately as likely tosucceed as the currently selected package. With techniques presentedherein, the likelihood to succeed or not succeed may be presented alongwith a percentage likelihood, and/or a rating tier indicating a degreeof likelihood.

At step 245, results may be displayed, which may include a likelihood ofsuccess of the candidate terms of the negotiation, recommended alternateterms, suggested tips to increase the likelihood of success, suggestedalternate items, a plurality of suggested alternate term packages, etc.Based upon user feedback, the engine may iterate back to step 215, orone of the other steps of FIG. 2, and repeat the process.

FIG. 3 illustrates a process for iteratively determining candidate termsfor transactions, according to one or more embodiments. At step 305, auser may make a first selection, which may be from a plurality ofcandidate terms packages, or individual terms modifications suggested bythe prediction engine due to their increasing the likelihood of successof the negotiation. The user may, for example, select a first term orset of terms. Based upon that selection, at step 310 the predictiveengine may determine a second plurality of term modifications, or termmodification packages, to present to the user. Based upon a selectionfrom among those, at step 315 the predictive engine may determine athird plurality of term modifications, or term modification packages, topresent to the user, and so on. Each new set of candidate terms packagesmay be based upon the information already known about the negotiation,as well as based on the prior selections made by the user. In thismanner, based upon user feedback, the predictive engine may iterativelyguide the dealer and/or client to a set of terms that is highly likelyto succeed, and that is amenable to all parties involved.

FIG. 4 illustrates a process for forecasting the outcome of candidatetransactions, according to one or more embodiments. At step 405,electronic prior transaction data may be received corresponding to aplurality of prior successful transactions and a plurality of priorunsuccessful transactions. At step 410, a machine learning predictiveengine may be trained based on the plurality of prior successfultransactions and the plurality of prior unsuccessful transactions. Atstep 415, electronic transaction data may be received associated with auser, an item, and candidate transaction terms, the electronictransaction data being associated with a candidate transaction. At step420, a likelihood of success of the candidate transaction may bedetermined by the machine learning predictive engine based on theelectronic transaction data. At step 425, the likelihood of success ofthe candidate transaction may be displayed.

FIG. 5 is a simplified functional block diagram of a computer 500 thatmay be configured as a device for executing the methods of FIGS. 2-4,according to exemplary embodiments of the present disclosure. FIG. 5 isa simplified functional block diagram of a computer that may beconfigured as the lender system 120, predictive system 130, dealersystem 110, third party system 125, and/or client system 105 accordingto exemplary embodiments of the present disclosure. Specifically, in oneembodiment, any of the user devices, servers, etc., discussed herein maybe an assembly of hardware 500 including, for example, a datacommunication interface 520 for packet data communication. The platformalso may include a central processing unit (“CPU”) 502, in the form ofone or more processors, for executing program instructions. The platformmay include an internal communication bus 508, and a storage unit 506(such as ROM, HDD, SDD, etc.) that may store data on a computer readablemedium 522, although the system 500 may receive programming and data vianetwork communications. The system 500 may also have a memory 504 (suchas RAM) storing instructions 524 for executing techniques presentedherein, although the instructions 524 may be stored temporarily orpermanently within other modules of system 500 (e.g., processor 502and/or computer readable medium 522). The system 500 also may includeinput and output ports 512 and/or a display 510 to connect with inputand output devices such as keyboards, mice, touchscreens, monitors,displays, etc. The various system functions may be implemented in adistributed fashion on a number of similar platforms, to distribute theprocessing load. Alternatively, the systems may be implemented byappropriate programming of one computer hardware platform.

Program aspects of the technology may be thought of as “products” or“articles of manufacture” typically in the form of executable codeand/or associated data that is carried on or embodied in a type ofmachine-readable medium. “Storage” type media include any or all of thetangible memory of the computers, processors or the like, or associatedmodules thereof, such as various semiconductor memories, tape drives,disk drives and the like, which may provide non-transitory storage atany time for the software programming. All or portions of the softwaremay at times be communicated through the Internet or various othertelecommunication networks. Such communications, for example, may enableloading of the software from one computer or processor into another, forexample, from a management server or host computer of the mobilecommunication network into the computer platform of a server and/or froma server to the mobile device. Thus, another type of media that may bearthe software elements includes optical, electrical and electromagneticwaves, such as used across physical interfaces between local devices,through wired and optical landline networks and over various air-links.The physical elements that carry such waves, such as wired or wirelesslinks, optical links, or the like, also may be considered as mediabearing the software. As used herein, unless restricted tonon-transitory, tangible “storage” media, terms such as computer ormachine “readable medium” refer to any medium that participates inproviding instructions to a processor for execution.

While the presently disclosed methods, devices, and systems aredescribed with exemplary reference to transmitting data, it should beappreciated that the presently disclosed embodiments may be applicableto any environment, such as a desktop or laptop computer, an automobileentertainment system, a home entertainment system, etc. Also, thepresently disclosed embodiments may be applicable to any type ofInternet protocol.

Other embodiments of the disclosure will be apparent to those skilled inthe art from consideration of the specification and practice of thedisclosure disclosed herein. It is intended that the specification andexamples be considered as exemplary only, with a true scope and spiritof the disclosure being indicated by the following claims.

In general, any process discussed in this disclosure that is understoodto be performable by a computer may be performed by one or moreprocessors. Such processes include, but are not limited to: theprocesses shown in FIGS. 2-4, and the associated language of thespecification. The one or more processors may be configured to performsuch processes by having access to instructions (computer-readable code)that, when executed by the one or more processors, cause the one or moreprocessors to perform the processes. The one or more processors may bepart of a computer system (e.g., one of the computer systems discussedabove) that further includes a memory storing the instructions. Theinstructions also may be stored on a non-transitory computer-readablemedium. The non-transitory computer-readable medium may be separate fromany processor. Examples of non-transitory computer-readable mediainclude solid-state memories, optical media, and magnetic media.

It should be appreciated that in the above description of exemplaryembodiments of the invention, various features of the invention aresometimes grouped together in a single embodiment, figure, ordescription thereof for the purpose of streamlining the disclosure andaiding in the understanding of one or more of the various inventiveaspects. This method of disclosure, however, is not to be interpreted asreflecting an intention that the claimed invention requires morefeatures than are expressly recited in each claim. Rather, as thefollowing claims reflect, inventive aspects lie in less than allfeatures of a single foregoing disclosed embodiment. Thus, the claimsfollowing the Detailed Description are hereby expressly incorporatedinto this Detailed Description, with each claim standing on its own as aseparate embodiment of this invention.

Furthermore, while some embodiments described herein include some butnot other features included in other embodiments, combinations offeatures of different embodiments are meant to be within the scope ofthe invention, and form different embodiments, as would be understood bythose skilled in the art. For example, in the following claims, any ofthe claimed embodiments can be used in any combination.

Thus, while certain embodiments have been described, those skilled inthe art will recognize that other and further modifications may be madethereto without departing from the spirit of the invention, and it isintended to claim all such changes and modifications as falling withinthe scope of the invention. For example, functionality may be added ordeleted from the block diagrams and operations may be interchanged amongfunctional blocks. Steps may be added or deleted to methods describedwithin the scope of the present invention.

The above disclosed subject matter is to be considered illustrative, andnot restrictive, and the appended claims are intended to cover all suchmodifications, enhancements, and other implementations, which fallwithin the true spirit and scope of the present disclosure. Thus, to themaximum extent allowed by law, the scope of the present disclosure is tobe determined by the broadest permissible interpretation of thefollowing claims and their equivalents, and shall not be restricted orlimited by the foregoing detailed description. While variousimplementations of the disclosure have been described, it will beapparent to those of ordinary skill in the art that many moreimplementations and implementations are possible within the scope of thedisclosure. Accordingly, the disclosure is not to be restricted exceptin light of the attached claims and their equivalents.

1. A computer-implemented method for using a machine-learning predictiveengine to predict failures, comprising: receiving electronic priortransaction data corresponding to a plurality of prior successfultransactions and a plurality of prior unsuccessful transactions, each ofthe prior transactions involving a plurality of parties that includes abuyer, a seller, and a lender; training a machine learning predictiveengine to determine an output likelihood of success for a giventransaction based on input electronic transaction data that includesinformation associated with the given transaction for each of (i) aplurality of given parties that includes a given buyer, a given seller,and a given lender, (ii) a given item, and (iii) given candidate terms,wherein: the machine learning predictive engine is configured to definesuccess for the given transaction based on a rule that is included inthe information associated with the given lender, and that isunassociated with a purchase price for the given transaction; and themachine learning predictive engine is trained based on the electronicprior transaction data corresponding to the plurality of priorsuccessful transactions and the plurality of prior unsuccessfultransactions; receiving electronic transaction data associated with acandidate transaction and including information associated with a buyer,a seller, and a lender involved with the candidate transaction, an item,and candidate transaction terms for the candidate transaction, whereinthe information associated with the lender includes a rule unassociatedwith a purchase price of the candidate transaction; defining, by themachine learning predictive engine, success for the candidatetransaction based on the rule included in the information associatedwith the lender; determining, by the machine learning predictive engine,a likelihood of success of the candidate transaction based on theelectronic transaction data associated with the candidate transaction;causing a user device associated with a user to display the likelihoodof success of the candidate transaction; receiving an indication ofwhether the candidate transaction is successful; combining theelectronic transaction data associated with the candidate transactionand the indication of whether the candidate transaction is successfulwith the electronic prior transaction data corresponding to theplurality of prior successful transactions and the plurality of priorunsuccessful transactions; and further training the machine learningpredictive engine using the combination.
 2. The computer-implementedmethod of claim 1, further comprising: determining whether thelikelihood of success is below a predetermined threshold; in response todetermining that the likelihood of success is below the predeterminedthreshold, determining one or more alternate terms of the candidatetransaction that increase the likelihood of success above thepredetermined threshold; and causing the user device to display the oneor more alternate terms of the candidate transaction.
 3. Thecomputer-implemented method of claim 1, further comprising: determiningwhether the likelihood of success is below a predetermined threshold; inresponse to determining that the likelihood of success is below thepredetermined threshold, determining one or more alternate items of thecandidate transaction that increase the likelihood of success above thepredetermined threshold; and causing the user device to display the oneor more alternate items of the candidate transaction.
 4. Thecomputer-implemented method of claim 3, wherein the one or morealternate items are older than the item.
 5. The computer-implementedmethod of claim 1, wherein the electronic prior transaction data isreceived from a first data source, and wherein training the machinelearning predictive engine further comprises: upon determining that theplurality of prior successful transactions or the plurality of priorunsuccessful transactions is below a predetermined threshold,automatically acquiring additional electronic prior transaction datafrom a second data source, the second data source being selected basedupon similarity to the first data source.
 6. The computer-implementedmethod of claim 1, further comprising: determining a lower predeterminedthreshold; determining a higher predetermined threshold, the higherpredetermined threshold being higher than the lower predeterminedthreshold; in response to determining that the likelihood of success isbelow the higher predetermined threshold and above the lowerpredetermined threshold, determining one or more alternate terms of thecandidate transaction that increase the likelihood of success above thehigher predetermined threshold; in response to determining that thelikelihood of success is below the higher predetermined threshold andbelow the lower predetermined threshold, determining one or morealternate items of the candidate transaction that increase thelikelihood of success above the lower predetermined threshold; andcausing the user device to display the one or more alternate terms orthe one or more alternate items of the candidate transaction.
 7. Thecomputer-implemented method of claim 1, further comprising: receiving aselection, from the user, of one of a plurality of candidate termpackages; and based on the selection of one of the plurality ofcandidate term packages, determining, by the machine learning predictiveengine, a second plurality of candidate term packages for display to theuser.
 8. The computer-implemented method of claim 1, wherein thecandidate transaction terms are represented as a multi-dimensionalvector in a multi-dimensional parameter space, and wherein determiningthe likelihood of success of the candidate transaction furthercomprises: determining a plurality of clusters of solutions in themulti-dimensional parameter space, each of the solutions correspondingto one of the plurality of prior successful transactions or one of theplurality of unsuccessful transactions; determining a nearest cluster ofthe plurality of clusters of solutions; and determining the likelihoodof success of the candidate transaction based on the nearest cluster. 9.The computer-implemented method of claim 1, further comprising:determining, by the machine learning predictive engine, a plurality ofcandidate transaction terms proposed by the user; and determining, basedon whether a range of at least one of the plurality of candidatetransaction terms entered by the user exceeds a predetermined range, awillingness to haggle associated with the user.
 10. Thecomputer-implemented method of claim 9, further comprising: providing,by the machine learning predictive engine, at least one recommendationwith regard to the candidate transaction based, at least in part, on thedetermined willingness to haggle.
 11. A computer-implemented method forusing a machine-learning predictive engine to predict failures,comprising: receiving electronic prior transaction data corresponding toa plurality of prior successful transactions and a plurality of priorunsuccessful transactions, each of the prior transactions involving aplurality of parties that includes a buyer, a seller, and a lender;training a machine learning predictive engine to determine an outputlikelihood of success for a given transaction based on input electronictransaction data that includes information associated with the giventransaction for each of (i) a plurality of given parties that includes agiven buyer, a given seller, and a given lender, (ii) a given item, and(iii) given candidate terms, wherein: the machine learning predictiveengine is configured to define success for the given transaction basedon a rule that is included in the information associated with the givenlender, and that is unassociated with a purchase price for the giventransaction; and the machine learning predictive engine is trained basedon the electronic prior transaction data corresponding to the pluralityof prior successful transactions and the plurality of prior unsuccessfultransactions; receiving electronic transaction data associated with acandidate transaction and including information associated with a buyer,a seller, and a lender involved with the candidate transaction, an item,and candidate transaction terms for the candidate transaction, whereinthe information associated with the lender includes a rule unassociatedwith a purchase price of the candidate transaction; defining, by themachine learning predictive engine, success for the candidatetransaction based on the rule included in the information associatedwith the lender; determining, by the machine learning predictive engine,a likelihood of success of the candidate transaction based on theelectronic transaction data associated with the candidate transaction;determining whether the likelihood of success is below a predeterminedthreshold; in response to determining that the likelihood of success isbelow a predetermined threshold, determining one or more alternate termsof the candidate transaction that increase the likelihood of successabove the predetermined threshold; causing a user device associated witha user to display the alternate terms of the candidate transaction;receiving an indication of whether the candidate transaction issuccessful; combining the electronic transaction data associated withthe candidate transaction and the indication of whether the candidatetransaction is successful with the electronic prior transaction datacorresponding to the plurality of prior successful transactions and theplurality of prior unsuccessful transactions; and further training themachine learning predictive engine using the combination.
 12. Thecomputer-implemented method of claim 11, further comprising: determiningwhether the likelihood of success is below a second predeterminedthreshold; in response to determining that the likelihood of success isbelow the second predetermined threshold, determining one or morealternate items of the candidate transaction that increase thelikelihood of success above the second predetermined threshold; andcausing the user device to display the one or more alternate items ofthe candidate transaction.
 13. The computer-implemented method of claim12, wherein the one or more alternate items are older than the item. 14.The computer-implemented method of claim 11, wherein the electronicprior transaction data is received from a first data source, and whereinthe training the machine learning predictive engine further comprises:upon determining that the plurality of prior successful transactions orthe plurality of prior unsuccessful transactions is below thepredetermined threshold, automatically acquiring additional electronicprior transaction data from a second data source, the second data sourcebeing selected based upon similarity to the first data source.
 15. Thecomputer-implemented method of claim 11, further comprising: determininga lower predetermined threshold; determining a higher predeterminedthreshold, the higher predetermined threshold being higher than thelower predetermined threshold; in response to determining that thelikelihood of success is below the higher predetermined threshold andabove the lower predetermined threshold, determining one or morealternate terms of the candidate transaction that increase thelikelihood of success above the higher predetermined threshold; inresponse to determining that the likelihood of success is below thehigher predetermined threshold and below the lower predeterminedthreshold, determining one or more alternate items of the candidatetransaction that increase the likelihood of success above the lowerpredetermined threshold; and causing the user device to display the oneor more alternate terms or the one or more alternate items of thecandidate transaction.
 16. The computer-implemented method of claim 11,further comprising: receiving a selection, from the user, of one of aplurality of candidate term packages; and based on the selection of oneof the plurality of candidate term packages, determining, by the machinelearning predictive engine, a second plurality of candidate termpackages for display to the user.
 17. The computer-implemented method ofclaim 11, wherein the candidate transaction terms are represented as amulti-dimensional vector in a multi-dimensional parameter space, andwherein determining the likelihood of success of the candidatetransaction further comprises: determining a plurality of clusters ofsolutions in the multi-dimensional parameter space, each of thesolutions corresponding to one of the plurality of prior successfultransactions or one of the plurality of unsuccessful transactions;determining a nearest cluster of the plurality of clusters of solutions;and determining the likelihood of success of the candidate transactionbased on the nearest cluster.
 18. The computer-implemented method ofclaim 11, further comprising: determining, by the machine learningpredictive engine, a plurality of candidate transaction terms proposedby the user; and determining, based on whether a range of at least oneof the plurality of candidate transaction terms entered by the userexceeds a predetermined range, a willingness to haggle associated withthe user.
 19. The computer-implemented method of claim 18, furthercomprising: providing, by the machine learning predictive engine, atleast one recommendation with regard to the candidate transaction based,at least in part, on the determined willingness to haggle.
 20. Acomputer system for using a machine-learning predictive engine topredict failures, the computer system comprising: a memory storinginstructions; and one or more processors configured to execute theinstructions to perform operations including: receiving electronic priortransaction data corresponding to a plurality of prior successfultransactions and a plurality of prior unsuccessful transactions, each ofthe prior transactions involving a plurality of parties that includes abuyer, a seller, and a lender; training a machine learning predictiveengine to determine an output likelihood of success for a giventransaction based on input electronic transaction data that includesinformation associated with the given transaction for each of (i) aplurality of given parties that includes a given buyer, a given seller,and a given lender, (ii) a given item, and (iii) given candidate terms,wherein: the training of the machine learning predictive engine includesrepresenting each of the plurality of prior successful transactions andeach of the plurality of prior unsuccessful transactions as a respectivea multi-dimensional vector in a multi-dimensional parameter space; andthe machine learning predictive engine is configured to determine thelikelihood of success for the given transaction by: redefining theplurality of prior successful transactions and the prior unsuccessfultransactions as successful or unsuccessful, respectively, based on arule that is included in the information associated with the givenlender, and that is unassociated with a purchase price of the giventransaction; defining a first cluster in the multi-dimensional parameterspace associated with the successful transactions; defining a secondcluster in the multi-dimensional parameter space associated with theunsuccessful transactions; representing the given transaction as afurther multi-dimensional vector in the multi-dimensional parameterspace; and determining the likelihood based on relative distancesbetween the further multi-dimensional vector of the given transactionand the first and second clusters, respectively; receiving electronictransaction data associated with a candidate transaction and includinginformation associated with a buyer, a seller, and a lender involvedwith the candidate transaction, an item, and candidate transaction termsfor the candidate transaction, wherein the information associated withthe lender includes a rule unassociated with a purchase price of thecandidate transaction; determining, by the machine learning predictiveengine, a likelihood of success of the candidate transaction based onthe electronic transaction data associated with the candidatetransaction; causing a user device associated with a user to display thelikelihood of success of the candidate transaction; receiving anindication of whether the candidate transaction is successful; combiningthe electronic transaction data associated with the candidatetransaction and the indication of whether the candidate transaction issuccessful with the electronic prior transaction data corresponding tothe plurality of prior successful transactions and the plurality ofprior unsuccessful transactions; and further training the machinelearning predictive engine using the combination.